package com.jier.service;

import com.jier.common.Page;
import com.jier.common.Result;
import com.jier.entities.SystemRole;

import java.util.List;

/**
 * 系统角色业务接口
 *
 * @author jie_r
 * @date 2018/03/08
 */
public interface ISystemRoleService extends IBaseService<SystemRole> {
    /**
     * 根据系统用户获取角色
     *
     * @param systemUserId
     * @return
     * @throws Exception
     */
    SystemRole getSystemRole(Integer systemUserId) throws Exception;

    /**
     * 分页获取系统角色
     *
     * @param page
     * @return
     * @throws Exception
     */
    Result<SystemRole> getSystemRoles(Page page) throws Exception;

    /**
     * 获取有效系统角色，除去管理员
     *
     * @return
     * @throws Exception
     */
    List<SystemRole> getSystemRoles() throws Exception;

    /**
     * 通过name获取系统角色
     *
     * @param name
     * @return
     * @throws Exception
     */
    SystemRole getSystemRoleByName(String name) throws Exception;
}
